package com.ddwl.schema.bo.gate.byteDance;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotEmpty;

/**
 * @Author hemiaojun
 * @Date 2021/8/23 15:18
 */
@ApiModel("字节跳动退款订单bo")
@Getter
@Setter
public class ByteRefundBo {

    @NotEmpty(message = "appid不能为空")
    @ApiModelProperty(value = "小程序APPID",required = true)
    private String app_id;

    @NotEmpty(message = "订单号不能为空")
    @ApiModelProperty(value = "商户分配订单号，标识进行退款的订单",required = true)
    private String out_order_no;

    @NotEmpty(message = "退款号不能为空")
    @ApiModelProperty(value = "商户分配退款号",required = true)
    private String out_refund_no;

    @NotEmpty(message = "支付价格不能为空")
    @ApiModelProperty(value = "支付价格",required = true)
    private Integer total_amount;

    @NotEmpty(message = "退款金额不能为空")
    @ApiModelProperty(value = "退款金额，单位[分]",required = true)
    private Integer refund_amount;

    @NotEmpty(message = "退款原因不能为空")
    @ApiModelProperty(value = "退款原因",required = true)
    private String reason;

    @NotEmpty(message = "签名不能为空")
    @ApiModelProperty(value = "开发者对核心字段签名",required = true)
    private String sign;

    @ApiModelProperty(value = "开发者自定义字段，回调原样回传")
    private String cp_extra;

    @ApiModelProperty(value = "商户自定义回调地址")
    private String notify_url;

    @ApiModelProperty(value = "服务商模式接入必传 第三方平台服务商 id，非服务商模式留空")
    private String thirdparty_id;

    @ApiModelProperty(value = "是否屏蔽担保支付的推送消息，1-屏蔽 0-非屏蔽，接入 POI 必传")
    private Integer disable_msg;

    @ApiModelProperty(value = "担保支付消息跳转页")
    private String msg_page;

    @ApiModelProperty(value = "是否为分账后退款，1-分账后退款；0-分账前退款。分账后退款会扣减可提现金额，请保证余额充足")
    private Integer all_settle;


}
